According to a conventional technique for speculative processing, a computer system executes in advance and in the background, a process that is expected to be executed in future. For example, according to another technique, a list of links to Web pages is saved together with selection frequencies of the Web pages, based on a past link history; and data of a uniform resource locator (URL) frequently selected in the past is read in advance into a cache area so that Web page data can be displayed at high speed. Another technique manages the power of a battery for a battery-powered multi-task computer device. For example, a method is known that inhibits the execution of unreliable applications standing by in the background.
For examples, refer to Japanese Laid-Open Patent Publication No. H11-24982 and Published Japanese-Translation of PCT Application, Publication No. 2007-520777.
The greater the volume of speculative processes to be executed, the greater the possibility of the results of speculative processes actually being used, i.e., the success rate of the speculative processing increases. Nonetheless, an increase in the volume of speculative processes to be executed leads to an increase in the consumption of such resources such as memory areas and power. For this reason, in a self-contained device, which has limited resources, such as a cellular phone, overhead caused by switching threads executed by speculative processes increases, reducing power efficiency and thus, brings about a problem of increased power consumption. Reducing the volume of speculative processes to be executed, on the other hand, lowers the success rate of the speculative processing.